package start.doubudouyin.utils;

import java.util.regex.Pattern;

public class StringCheck {
    //手机号校验：11位数字
    public static String phoneCheck(String phone) {
        if (!Pattern.matches("^1\\d{10}$", phone)) {
            return "手机号必须为11位数字，且以1开头";
        }
        return null; // 校验通过返回null
    }
    // 密码校验：6-20位数字和字母组合
    public static String passwordCheck(String password) {
        if (password.length() < 6 || password.length() > 20) {
            return "密码长度必须为6-20位!";
        }
        if (!Pattern.matches("^[A-Za-z\\d]{6,20}$", password)) {
            return "密码只能包含字母和数字!";
        }
        return null;
    }
    // 用户名校验：长度<=20位
    public static String usernameCheck(String username) {
        if (username.length() > 20) {
            return "用户名长度不能超过20位";
        }
        return null;
    }
    // 身份证校验：18位数字（允许最后一位是X/x）
    public static String idcardCheck(String idcard) {
        if (!Pattern.matches("^\\d{17}[0-9Xx]$", idcard)) {
            return "身份证号格式不合法!";
        }
        return null;
    }
    // 昵称校验：长度<=16位
    public static String nicknameCheck(String nickname) {
        if (nickname.length() > 16) {
            return "昵称长度不能超过16位";
        }
        return null;
    }
}
